home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / programm.ing / m2gem106.lzh / CRYSTAL1.06 / SRC / AESVDI / GEMVDI.DEF < prev    next >
Encoding:
Modula Definition  |  1993-02-01  |  2.7 KB  |  135 lines

  1. DEFINITION MODULE GEMVDI;
  2.  
  3. (*
  4. GEMVDI Definitions.
  5.  
  6. UK __DATE__ __TIME__
  7. *)
  8.  
  9. (*DEF_SWITCHES*)
  10.  
  11. IMPORT VDI,
  12.        VControl;
  13.  
  14. CONST EOS = VDI.EOS;
  15.  
  16. TYPE Key = VDI.Key;
  17.  
  18. TYPE SpecialKeys = VDI.SpecialKeys;
  19. #if no_enum_reexport
  20. CONST KRShift = VDI.KRShift;
  21.                     KLShift,
  22.                     KCtrl,
  23.                     KAlt,
  24. #endif
  25. TYPE SpecialKey = PACKEDSET OF SpecialKeys;
  26.  
  27. TYPE HorizontalOffsetTable = ARRAY[0..255] OF UNSIGNEDWORD;
  28.      CharacterOffsetTable = ARRAY[0..256] OF UNSIGNEDWORD;
  29.  
  30. TYPE FontFlags = 
  31.  
  32. (SystemFont,
  33.                   HorizontalOffset,
  34.                   ByteSwapped,
  35.                   MonoSpaced,
  36.  
  37. TYPE FontFlag = SET OF FontFlags;
  38.  
  39.      FontPtr = POINTER TO FontHdr;
  40.      FontHdr = RECORD
  41.  
  42. TYPE ImgHeader = RECORD
  43.  
  44.      ScanLine = RECORD
  45.  
  46.      ColorModels = (RGB,CYM,HLS,Pantone);
  47.  
  48.      ColorIntensity = [0..1000];
  49.  
  50.      RGBList = RECORD
  51.  
  52.      XImgHeader = RECORD
  53.  
  54. CONST White    = 0;
  55.       Black    = 1;
  56.       Red      = 2;
  57.       Green    = 3;
  58.       Blue     = 4;
  59.       Cyan     = 5;
  60.       Yellow   = 6;
  61.       Magenta  = 7;
  62.       LWhite   = 8;
  63.       LBlack   = 9;
  64.       LRed     = 10;
  65.       LGreen   = 11;
  66.       LBlue    = 12;
  67.       LCyan    = 13;
  68.       LYellow  = 14;
  69.       LMagenta = 15;
  70.  
  71.       DWhite   = 8;
  72.       DBlack   = 9;
  73.       DRed     = 10;
  74.       DGreen   = 11;
  75.       DBlue    = 12;
  76.       DCyan    = 13;
  77.       DYellow  = 14;
  78.       DMagenta = 15;
  79.  
  80. TYPE ContrlArray = ARRAY[0..11] OF UNSIGNEDWORD;
  81.  
  82.      VectorBlock = RECORD
  83.  
  84.      ControlBlock = RECORD
  85.  
  86. VAR contrl: ControlBlock;
  87.  
  88. CONST MaxInput = 256; (* VGText() ! *)
  89.       MaxOutput = 256; (* VRQString() ! *)
  90.  
  91. TYPE Integer = SIGNEDWORD;
  92.  
  93.      IntegerInputRange = [0..(MaxInput - 1)];
  94.      IntegerOutputRange = [0..(MaxOutput - 1)];
  95.  
  96.      IntegerInput = ARRAY IntegerInputRange OF Integer;
  97.      IntegerOutput = ARRAY IntegerOutputRange OF Integer;
  98.  
  99. VAR intin : IntegerInput;
  100.     intout: IntegerOutput;
  101.  
  102. CONST MinPoints = 128;
  103.       MaxPoints = 1024; (* should be enough *)
  104.  
  105. TYPE Point = UNSIGNEDWORD;
  106.  
  107.      PointsInputRange = [0..(MaxPoints * 2  - 1)];
  108.      PointsOutputRange = [0..9]; (*  VQTFontInfo() ! *)
  109.  
  110.      PointsInput = ARRAY PointsInputRange OF Point;
  111.      PointsOutput = ARRAY PointsOutputRange OF Point;
  112.  
  113. VAR ptsin : PointsInput;
  114.     ptsout: PointsOutput;
  115.  
  116. CONST MaxNDC = 32767;
  117.  
  118. TYPE XY = [0..MaxNDC];
  119.  
  120. TYPE PB = RECORD
  121.  
  122. VAR v: PB;
  123.  
  124. PROCEDURE vdi;
  125.  
  126. PROCEDURE CallVDI(opcode,nptsin,nintin,handle: UNSIGNEDWORD);
  127.  
  128. PROCEDURE CallEsc(escno,handle: UNSIGNEDWORD);
  129.  
  130. PROCEDURE CallVDIEsc(escno,nptsin,nintin,handle: UNSIGNEDWORD);
  131.  
  132. PROCEDURE Result(): SIGNEDWORD;
  133.  
  134. END GEMVDI.
  135.